<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.prime.com.tr/ui">
	<ui:composition template="/templates/padrao.xhtml">
		<ui:define name="barraTitulo">Cadastro de Cliente</ui:define>
			<ui:define name="conteudo" >			
				<p:tabView>
					<p:tab title="Manuten&ccedil;&atilde;o">
						<h:form id="form">
							<p:dialog header="Mensagem" id="dialog1" widgetVar="dialog" fixedCenter="true" modal="true" visible="#{facesContext.maximumSeverity != null}">
					   			<p:messages/>                     
							</p:dialog>
							
							<h:panelGrid columns="2" columnClasses="width150 alinhaDir, width500" >
								<h:outputText value="Tipo Cliente:" styleClass="alinhaDir"/>							
								<h:selectOneMenu value="#{controleCliente.tipoClientePesquisa}"  >
									<f:selectItem var="cliente" itemLabel="selecione" itemValue=""/>  
					            	<f:selectItems value="#{controleCliente.tiposCliente}" var="tipo" itemLabel="#{tipo}" itemValue="#{tipo}" />
								</h:selectOneMenu>								
							</h:panelGrid>
							
							<h:panelGrid columns="2" columnClasses="width150 alinhaDir, width500" >												
								<h:outputText value="CodigoCliente:" styleClass="alinhaDir" />
								<h:inputText value="#{controleCliente.codigoClientePesquisa}" styleClass="textfield" size="10" />								
							</h:panelGrid>
							
							<h:panelGrid columns="2" columnClasses="width150 alinhaDir, width500" >												
								<h:outputText value="Nome:" styleClass="alinhaDir" />
								<h:inputText value="#{controleCliente.nomePesquisa}" styleClass="textfield" size="60" />							
							</h:panelGrid>
							
							<h:panelGrid columns="2" columnClasses="width150 alinhaDir, width500" >												
								<h:outputText value="CPF/CNPJ:" styleClass="alinhaDir" />
								<h:column>	
									<h:inputText value="#{controleCliente.cPF_CNPJPesquisa}" styleClass="textfield" size="20"  />
									<h:outputText styleClass="" value= "&nsbp; (Apenas Números)"/>								
								</h:column> 
							</h:panelGrid>
							
							<h:panelGrid columns="2" columnClasses="width150 alinhaDir, width500" >	
								<h:outputText value="RG/IE:" styleClass="alinhaDir" />
								<h:column>
									<h:inputText value="#{controleCliente.rG_IEPesquisa}" styleClass="textfield" size="20"  />
									<h:outputText styleClass="" value= "&nsbp; (Apenas Números)"/>
								</h:column>					
							</h:panelGrid>
							
							
							<h:panelGrid styleClass="alinhaMeio">								
								<h:column headerClass="alinhaDir" >
									<h:commandLink action="#{controleCliente.adicionar}" class="btnAcoes">
										<h:graphicImage url="/images/botoes/btnNovo.png" styleClass="hand" />
									</h:commandLink>
									<h:commandLink action="#{controleCliente.limpar}" class="btnAcoes">
										<h:graphicImage url="/images/botoes/btnLimpar.png" styleClass="hand" />
										<f:ajax render=":form"/>
									</h:commandLink>
									<h:commandLink action="#{controleCliente.pesquisar}" class="btnAcoes">
										<h:graphicImage url="/images/botoes/btnPesquisar.png" styleClass="hand"  />
										<f:ajax render=":lista" execute="@form"/>								
									</h:commandLink>									
								</h:column>
							</h:panelGrid>
						</h:form>
					</p:tab>
				</p:tabView>
				<h:form id="lista" >
				<p:dataTable value="#{controleCliente.lista}" 
				             id="id_Lista"
				             var="cliente" 
				             paginator="true" 
				             rows="10" 
				             dynamic="true" 
				             rendered="#{not empty controleCliente.lista}" 
							 firstPageLinkLabel="Primeiro"
				             previousPageLinkLabel="Anterior"
				             nextPageLinkLabel ="Pr&oacute;ximo"
				             lastPageLinkLabel="&Uacute;ltima"
				             emptyMessage="Nenhum resgistro encontrado"
				             errorMessage="Oclientereu um erro"	    			             
				             selectionMode="single">				             
                    <p:column sortBy="#{cliente.tipo}" styleClass="width5" >
						<f:facet name="header">
							<h:outputText value="Tipo" />
						</f:facet>
						<h:outputText value="#{cliente.tipo}" />
					</p:column>				             
					<p:column sortBy="#{cliente.codigoCliente}" resizable="true" styleClass="width80" >
						<f:facet name="header">
							<h:outputText value="C&oacute;digo" />
						</f:facet>
						<h:outputText value="#{cliente.codigoCliente}" />
					</p:column>
					<p:column sortBy="#{cliente.nome}" styleClass="width100" resizable="true" >
						<f:facet name="header">
							<h:outputText value="nome" />
						</f:facet>
						<h:outputText value="#{cliente.nome}" />
					</p:column>
					<p:column  >
						<f:facet name="header">
							<h:outputText value="CPF / CNPJ" />
						</f:facet>
						<h:outputText value="#{cliente.CPF_CNPJ}" />
					</p:column>
					<p:column  styleClass="width80">
						<f:facet name="header">
							<h:outputText value="RG / IE" />
						</f:facet>
						<h:outputText value="#{cliente.RG_IE}" />
					</p:column>
					<p:column sortBy="#{cliente.email}" resizable="true" >
						<f:facet name="header">
							<h:outputText value="Email" />
						</f:facet>
						<h:outputText value="#{cliente.email}" />
					</p:column>
					<p:column  styleClass="width110" >
						<f:facet name="header">
							<h:outputText value="Telefone" />
						</f:facet>
						<h:outputText value="#{cliente.telefone}" />
					</p:column>
					
					<p:column resizable="true" styleClass="width80">
						<f:facet name="header">
							<h:outputText value="A&ccedil;&atilde;o" /> 
						</f:facet>
						<h:commandLink action="#{controleCliente.alterar}">  
							<h:graphicImage url="/images/marcadores/editar.png"  alt="Alterar Cliente"/>  
							<f:setPropertyActionListener target="#{controleCliente.cliente}" value="#{cliente}" />
						</h:commandLink>
						<p:commandLink update="lista" oncomplete="dlg.show();">  
							<h:graphicImage url="/images/marcadores/excluir.png" alt="Excluir Cliente"/>  
							<f:setPropertyActionListener target="#{controleCliente.cliente}" value="#{cliente}" />
						</p:commandLink>
                    	</p:column>
				</p:dataTable>
				<p:dialog header="Confirma&ccedil;&atilde;o" width="300" fixedCenter="true" widgetVar="dlg" visible="false">  
					<h:panelGrid columns="2" style="margin-bottom:10px">
						<h:column>   
							<h:outputLabel  value="Deseja Excluir?" />
						</h:column>
						<h:column >
							<p:commandButton value="Sim" action="#{controleCliente.excluir}" update="id_Lista" oncomplete="dlg.hide();" />  
							<p:commandButton value="Nao" update="form" oncomplete="dlg.hide();"/>
						</h:column>  
					</h:panelGrid>  
				</p:dialog>
			</h:form>
		</ui:define>			
	</ui:composition>
</html>